package com.ruoyi.project.lease.order.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;

/**
 * 订单管理对象 sys_order
 *
 * @author admin
 * @date 2022-01-11
 */
public class Order extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 订单编号 */
    @Excel(name = "订单编号")
    private Long orderId;

    /** 客户编号 */
    @Excel(name = "客户编号")
    private Long custNo;

    /** 车辆编号 */
    @Excel(name = "车辆编号")
    private Long carId;

    /** 订单状态 */
    @Excel(name = "订单状态")
    private Integer orderStatus;

    /** 租车时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    @Excel(name = "租车时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm")
    private Date rentTime;

    /** 预计还车时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    @Excel(name = "预计还车时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm")
    private Date expectReturnTime;

    /** 实际还车时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    @Excel(name = "实际还车时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm")
    private Date actualReturnTime;

    /** 租车金额 */
    @Excel(name = "租车金额")
    private Long rentPrice;

    /** 按天单价 */
    @Excel(name = "按天单价")
    private Long dayPrice;

    /** 超时单价/时 */
    @Excel(name = "超时单价/时")
    private Long delayHourPrice;

    /** 损坏金额 */
    @Excel(name = "损坏金额")
    private Long damagePrice;

    /** 超时单价/天 */
    @Excel(name = "超时单价/天")
    private Long delayDayPrice;

    /** 超时金额 */
    @Excel(name = "超时金额")
    private Long delayPrice;

    /** 押金 */
    @Excel(name = "押金")
    private Long deposit;

    /** 总金额 */
    @Excel(name = "总金额")
    private Long allPrice;

    /** 删除标志 */
    private Integer delFlag;

    public void setOrderId(Long orderId)
    {
        this.orderId = orderId;
    }

    public Long getOrderId()
    {
        return orderId;
    }
    public void setCustNo(Long custNo)
    {
        this.custNo = custNo;
    }

    public Long getCustNo()
    {
        return custNo;
    }
    public void setCarId(Long carId)
    {
        this.carId = carId;
    }

    public Long getCarId()
    {
        return carId;
    }
    public void setOrderStatus(Integer orderStatus)
    {
        this.orderStatus = orderStatus;
    }

    public Integer getOrderStatus()
    {
        return orderStatus;
    }
    public void setRentTime(Date rentTime)
    {
        this.rentTime = rentTime;
    }

    public Date getRentTime()
    {
        return rentTime;
    }

    public Date getExpectReturnTime() {
        return expectReturnTime;
    }

    public void setExpectReturnTime(Date expectReturnTime) {
        this.expectReturnTime = expectReturnTime;
    }

    public Date getActualReturnTime() {
        return actualReturnTime;
    }

    public void setActualReturnTime(Date actualReturnTime) {
        this.actualReturnTime = actualReturnTime;
    }
    public void setRentPrice(Long rentPrice)
    {
        this.rentPrice = rentPrice;
    }

    public Long getRentPrice()
    {
        return rentPrice;
    }
    public void setDayPrice(Long dayPrice)
    {
        this.dayPrice = dayPrice;
    }

    public Long getDayPrice()
    {
        return dayPrice;
    }
    public void setDelayHourPrice(Long delayHourPrice)
    {
        this.delayHourPrice = delayHourPrice;
    }

    public Long getDelayHourPrice()
    {
        return delayHourPrice;
    }
    public void setDamagePrice(Long damagePrice)
    {
        this.damagePrice = damagePrice;
    }

    public Long getDamagePrice()
    {
        return damagePrice;
    }
    public void setDelayDayPrice(Long delayDayPrice)
    {
        this.delayDayPrice = delayDayPrice;
    }

    public Long getDelayDayPrice()
    {
        return delayDayPrice;
    }
    public void setDelayPrice(Long delayPrice)
    {
        this.delayPrice = delayPrice;
    }

    public Long getDelayPrice()
    {
        return delayPrice;
    }
    public void setDeposit(Long deposit)
    {
        this.deposit = deposit;
    }

    public Long getDeposit()
    {
        return deposit;
    }
    public void setAllPrice(Long allPrice)
    {
        this.allPrice = allPrice;
    }

    public Long getAllPrice()
    {
        return allPrice;
    }
    public void setDelFlag(Integer delFlag)
    {
        this.delFlag = delFlag;
    }

    public Integer getDelFlag()
    {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("orderId", getOrderId())
                .append("custNo", getCustNo())
                .append("carId", getCarId())
                .append("orderStatus", getOrderStatus())
                .append("rentTime", getRentTime())
                .append("expectReturnTime", getExpectReturnTime())
                .append("actualReturnTime", getActualReturnTime())
                .append("createTime", getCreateTime())
                .append("updateTime", getUpdateTime())
                .append("rentPrice", getRentPrice())
                .append("dayPrice", getDayPrice())
                .append("delayHourPrice", getDelayHourPrice())
                .append("damagePrice", getDamagePrice())
                .append("delayDayPrice", getDelayDayPrice())
                .append("delayPrice", getDelayPrice())
                .append("deposit", getDeposit())
                .append("allPrice", getAllPrice())
                .append("delFlag", getDelFlag())
                .toString();
    }
}
